ראיון אישי, מטלת בית של 2:40 ושני ראיונות טכניים של כשעתיים
שאלות מתוך הראיון
נתונים אוסף קווים דו-מימדיים כנקודות התחלה וסיום. צור אלג׳ שמחזיר קו המקביל לציר ה-y שעובר דרך מספר מקסימלי של קווים נתונים.
תשובות
הוסף תשובה
|
לצפיה בתשובות
ספטמבר 2022
נתייחס רק לקואורדינטה על ציר ה-x. יוצרים שני מערכים - אחד של נקודות התחלה וסיום הקווים והשני המתעד אם זו נק׳ התחלה או סיום. ממיינים את שני המערכים על פי המערך הראשון ועוברים עליו כאשר נוסיף 1 למספר הקווים שנוכל לעבור דרכם כאשר המערך השני מראה שזו התחלת קו אחרת נוריד אחד ונחזיר את המקסימום שהתקבל לאורך הסריקה. חסום ע״י זמן מיון, ניתן לבצע עם count / radix sort במידה וידוע על מיקומים אפשריים של הקווים
משימה שמורכבת משני חלקים:
1. יש קובץ דאטה וקובץ קונפיגורציה. צריך לאתר מידה בדאטה ולראות האם הוא תואם לקונפיגורציה. שפה נדרשת : פייתון
2. לאחר שבונים את הסקריפט בפייתון, צריך לכתוב bash script שיריץ את הסקריפט של הפייתון על קבצים, כאשר נתון רק תיקיית שורש ואז רקוסיבית על כל התיקויות והקבצים שתחתיה
להכל היה שעתיים
שיחה טלפונית , אחריו ראיון דרך המחשב באורך של שעתיים
שאלות מתוך הראיון
הסבר של כ20 דק על המשרה (כתיבת אלגוריתמים embedded)+ הסבר על המרואיין
שאלות:
נתן קוד בCPP האובייקט מקבל תמונה (מטריצה) אורך ורחב ממיר את התמונה למערך, וממש אופרטור () שניגש לתמונה עם הממורת למערך
1. מה עושה הפונקצייה של אופרטור () עבור img(x,y)-מחזיר את ערך הפיקסל בoffset של (x+y)*w
2. ישנו for בתוך for, מה יקרה אם נהפוך את הסדר בין שתי הלולאות (כלומר הראשונה תהפוך להיות תת ללואה של השינה) - הערך שיוחזר יהיה זהה
3. האם זה יהיה יותר יעיל?
המשך של הראיון היה לכתוב פסדו-קוד
ישנו מערך של 200 תאים צריך לממש פונקציית malloc ו free
מדובר במשרת סטודנט, זומנתי לראיון טכני של שעה וחציה, הסבירו לי על התפקיד, שאלו אותי 2 שאלות מקצועיות.
שאלות מתוך הראיון
שאלה בתכנות:
בהינתן מערך, צור מערך אשר בכל אינדקס i מכיל את מכפלת כל האיברים במערך הנתון מלבד האיבר ה-i בו.
דוג' נתון [1,2,3,4] התוצאה תהיה: [24,12,8,6]
שאלה נוספת בחומרה: נתון רכיב אשר מקבל כניסה של 8 סיביות ויציאה של 3 סיביות, המוצא מסמל את האינדקס של האיבר הראשון שיש בו 1.
שאלה 1: מה הכשל הלוגי בתכנון? תשובה: עבור כניסה של אפסים בלבד, לא מוגד מה יהיה המוצא. דרך תיקון: הוספת יציאה שמסמסלת על כך.
שאלה 2: ממש בעזרת הרכיב, רכיב זהה שמקבל 16 סיביות.
התקשרו, שלחו מבחן קוד כמטלת בית עם 3 שאלות במערכת codility. הקודים היו אמורים להיכתב בשפת Python.
שאלות מתוך הראיון
1. קוד ההופך סטרינג של מספרים בצורה כזו: אם יש את הסטרינג 123456 אז הקוד צריך להפוך אותו ל-162534
2. מקבלים 4 ספרות, כמה צריפופים אפשריים אפשר לעשות מ4 הספרות הללו שהגיוניות בשעון דיגיטלי, למשל מכניסים את הספרות 8512 אז צירוף אפשרי לדוגמא הוא 1258 שכן קיימת שעה 12:58 ולעומת זאת ציוף לא הגיוני הוא 1285 שכן 12:5 לא הגיוני בשעון.
3. נתון סטרינג שכאילו מגדיר כמו טבלה (ירידת שורות ע"י \n) וצריך להשמיט שורות בהם יש את הערך NULL.